package com.carleasoft.mps.adu.business.user.bean.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.List;

/**
 * @Description: 用户基本信息表vo
 * @Author: fan
 */
@Data
public class AuthorityUserBasicInfoVo {
    /**
     * 用户id
     */
    private Long id;

    private String userCode;

    private String userName;

    /**
     * 工作部门
     */
    private String deptCode;

    /**
     * 工作部门
     */
    private String deptName;

    /**
     * 1-男，2-女，3-未知
     */
    private Integer sex;

    private String positionCode;

    private String positionName;

    /**
     * 出生日期
     */
    private String birthday;

    /**
     * 身份证号码
     */
    private String idCard;

    /**
     * 家庭地址（邮编）
     */
    private String address;

    /**
     * 籍贯
     */
    private String nativePlace;

    /**
     * 籍贯信息（全名称和全路径）
     */
    private HashMap<String,Object> nativePlaceMsg1;
    /**
     * 籍贯信息（全名称和全路径）
     */
    private List<HashMap<String,String>> nativePlaceMsg2;

    /**
     * 民族
     */
    private String nation;

    /**
     * 参加工作时间
     */
    private LocalDate workTime;

    /**
     * 参加公安工作时间
     */
    private LocalDate workPoliceTime;

    /**
     * 入党团时间
     */
    private LocalDate caucusEntryTime;

    /**
     * 政治面貌1-群众，2-团员，3-中共党员，99-其他
     */
    private Integer political;

    /**
     * 行政职务 1 综合类 2行政类 3...
     */
    private Integer administrativePost;

    /**
     * 任职年
     */
    private Double serviceYear;

    /**
     * 任职月
     */
    private Double serviceMonth;

    /**
     * 现从事专业
     */
    private String currentlySubject;

    /**
     * 本专业工作年限
     */
    private Double majorWorkYear;

    /**
     * 现任专业技术职务
     */
    private String currentProfessionalPosition;

    /**
     * 取得资格时间
     */
    private LocalDate qualifyingTime;

    /**
     * 警衔
     */
    private String policeRank;

    /**
     * 警号
     */
    private String policeNumber;

    /**
     * 学历1-小学，2-初中，3-高中，4-专科，5-本科，6-硕士，7-博士，99-其他
     */
    private Integer education;

    /**
     * 学位 1 学士 2 硕士 3 博士
     */
    private Integer degree;

    /**
     * 毕业院校
     */
    private String graduateInstitutions;

    /**
     * 毕业时间
     */
    private LocalDate graduateTime;

    /**
     * 专业
     */
    private String subject;

    /**
     * 毕业证书
     */
    private String graduationCertificate;

    /**
     * 学位证书
     */
    private String diploma;

    /**
     * 掌握何种外语，程度如何
     */
    private String masterLanguage;

    /**
     * 参加何种学术团体、任何职，有无社会其他兼职
     */
    private String joinClub;

    private String local;

    private String job;

    private String experts;

    private String telephone;

    /**
     * 专任实验室教师人员
     */
    private Integer regularLabPerson;

    private String mail;

    /**
     * 证件照（文件表ID）
     */
    private Long idPhoto;

    /**
     * 头像（文件表ID）
     */
    private Long headPicture;

    private String domicilePlace;

    /**
     * 版本
     */
    private Integer version;

    /**
     * 逻辑删除 0 未删除 1 删除
     */
    private Integer isDelete;

    private String organizationCode;

    private String organizationName;

    private String createPersonCode;

    private String createPersonName;

    private LocalDateTime createTime;

    private String updatePersonCode;

    private String updatePersonName;

    private LocalDateTime updateTime;

    /**
     * 所在鉴定机构
     */
    private String accreditingBody;

    /**
     * 鉴定项目
     */
    private String accreditingItem;

    /**
     * 鉴定项目从事时间
     */
    private LocalDate accreditingItemTime;

    /**
     * 兼职鉴定项目代码
     */
    private String ptjAccreditingItemCode;

    /**
     * 兼职鉴定项目从事时间
     */
    private LocalDate ptjAccreditingItemTime;

    /**
     * 鉴定人证书编号
     */
    private String appraiserCertificateCode;

    /**
     * 初次取得证书时间
     */
    private LocalDate firstGitCertificateTime;

    /**
     * 最新发证时间
     */
    private LocalDate newCaterToTime;
    /**
     * 照片地址（存照片）
     */
    private String photograph;
}
